package com.wlyuan.open.scanner.dao.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author yuanjie
 * @since 2022-11-07
 */
@Data
@TableName("Price_DocDetails")
@ApiModel(value = "PriceDocdetailsDO对象", description = "")
public class PriceDocDetailsDO implements Serializable {


    private static final long serialVersionUID = 1211237459495175928L;
    @ApiModelProperty("报价单ID")
    private Long detailDocid;

    @ApiModelProperty("费用类型  1 零担  2 整车  3 提货费  4 送货费  5 装货费  6 卸货费  7 最小金额  8 保费  9 附加费   10 税费 11 搬运费 12 预付 13 到付")
    private Integer detailType;

    @ApiModelProperty("发货省")
    private Long detailFromprovince;

    @ApiModelProperty("发货市")
    private Long detailFromcity;

    @ApiModelProperty("发货区")
    private Long detailFromdistrict;

    @ApiModelProperty("发货地")
    private String detailFrom;

    @ApiModelProperty("收货省")
    private Long detailToprovince;

    @ApiModelProperty("收货市")
    private Long detailTocity;

    @ApiModelProperty("收货区")
    private Long detailTodistrict;

    @ApiModelProperty("收货地")
    private String detailTo;

    @ApiModelProperty("距离（无用）")
    private Long detailKms;

    @ApiModelProperty("车型")
    private Long detailCartype;

    @ApiModelProperty("车长")
    private Double detailCarlength;

    @ApiModelProperty("备注")
    private String detailDescription;

    @ApiModelProperty("最小体积")
    private BigDecimal detailMinvolume;

    @ApiModelProperty("最大体积")
    private BigDecimal detailMaxvolume;

    @ApiModelProperty("体积单位")
    private Long detailVolumeunit;

    @ApiModelProperty("最小重量")
    private BigDecimal detailMinweight;

    @ApiModelProperty("最大重量")
    private BigDecimal detailMaxweight;

    @ApiModelProperty("重量单位")
    private Long detailWeightunit;

    @ApiModelProperty("最小值边界")
    private Integer detailMinequal;

    @ApiModelProperty("最大值边界")
    private Integer detailMaxequal;

    @ApiModelProperty("价格")
    private Double detailAmount;

    @ApiModelProperty("最小费用")
    private Double detailMinpay;

    @ApiModelProperty("创建人")
    private Long detailCreator;

    @ApiModelProperty("创建公司")
    private Long detailCreatorcompanyid;

    @ApiModelProperty("创建时间")
    private LocalDateTime detailCreatetime;

    @ApiModelProperty("修改人")
    private Long detailUpdater;

    @ApiModelProperty("修改时间")
    private LocalDateTime detailUpdatetime;

    @ApiModelProperty("是否失效")
    private Integer detailInvalid;

    @ApiModelProperty("备注")
    private String detailComments;

    @ApiModelProperty("最小数量")
    private BigDecimal detailMincount;

    @ApiModelProperty("最大数量")
    private BigDecimal detailMaxcount;

    @ApiModelProperty("数量单位")
    private Long detailCountunit;

    @ApiModelProperty("车体积")
    private BigDecimal detailCarvolume;

    @ApiModelProperty("车重量")
    private BigDecimal detailCarweight;

    @ApiModelProperty("附加费类型  1 上楼费 2 倒车费 3 其它 4 包装费 5 仓储费 6 提货费 7 送货费 8 装货费 9 卸货费10叉车费11放空费12退返费13等待费14调车费15异常费")
    private Long detailAdditiontype;

    @ApiModelProperty("电梯")
    private Integer detailElevator;

    @ApiModelProperty("最小楼层")
    private Long detailMinfloor;

    @ApiModelProperty("最大楼层")
    private Long detailMaxfloor;

    @ApiModelProperty("楼层单价")
    private Integer detailFloorunit;

    @ApiModelProperty("时效")
    private Integer detailAging;

    @ApiModelProperty("有异议项")
    private Integer detailPending;

    @ApiModelProperty("计费模式 0 不适用 1 重量 2 体积 3 数量")
    private Integer detailUnittype;

    @ApiModelProperty("1 公斤 2 吨 3 立方米 4 升 5 个 (参考Price_Unit)")
    private Integer detailUnit;

    @ApiModelProperty("是否修改价格：0、否 1、是")
    private Long detailUpdateprice;

    @ApiModelProperty("针对装卸货费归属：0:无；1：零担；2：整车；")
    private Long detailQuotationtype;

    @ApiModelProperty("前一次的价格")
    private Double detailOldamount;

    @TableId(value = "Detail_ID", type = IdType.AUTO)
    private Long detailId;

    private Long optStatus;


    @ApiModelProperty("发货省名称")
    @TableField(exist = false)
    private String fromProvinceName;
    @ApiModelProperty("发货市名称")
    @TableField(exist = false)
    private String fromCityName;
    @ApiModelProperty("发货区名称")
    @TableField(exist = false)
    private String fromDistrictName;
    @ApiModelProperty("收货省名称")
    @TableField(exist = false)
    private String toProvinceName;
    @ApiModelProperty("发货市名称")
    @TableField(exist = false)
    private String toCityName;
    @ApiModelProperty("发货区名称")
    @TableField(exist = false)
    private String toDistrictName;
    @ApiModelProperty("最大值")
    @TableField(exist = false)
    private BigDecimal maxValue;
    @ApiModelProperty("最小值")
    @TableField(exist = false)
    private BigDecimal minValue;


}
